// packageA/pages/Shopping/Shopping.ts
import { products } from '../../../utils/productData';
import request from '../../../utils/request';

Page({

  /**
   * 页面的初始数据
   */
  data: {
    searchValue: '',
    products: products
  },

  /**
   * 搜索输入事件
   */
  onSearchInput(e: any) {
    this.setData({
      searchValue: e.detail.value
    });
  },

  /**
   * 搜索确认事件
   */
  onSearchConfirm(e: any) {
    const value = e.detail.value;
    console.log('搜索内容:', value);
    
    if (!value.trim()) {
      // 如果搜索内容为空，重新加载所有商品
      this.loadProductList();
      return;
    }

    // 使用本地搜索（因为后端接口可能不支持搜索参数）
    const allProducts = this.data.products.length > 0 ? this.data.products : products;
    const filteredProducts = allProducts.filter(product => 
      product.name.toLowerCase().includes(value.toLowerCase()) ||
      product.shortDesc.toLowerCase().includes(value.toLowerCase())
    );

    this.setData({
      products: filteredProducts
    });
  },

  /**
   * 跳转到商品详情页
   */
  goToProductDetail(e: any) {
    const productId = e.currentTarget.dataset.id;
    wx.navigateTo({
      url: `../ShoppingIM/ShoppingIM?id=${productId}`
    });
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad() {
    // 先显示本地数据，然后尝试加载后端数据
    this.loadProductList();
  },

  /**
   * 加载商品列表
   */
  async loadProductList() {
    try {
      // 调用后端接口获取商品列表
      const res: any = await request.getGoodsList();
      
      if (res && res.data && Array.isArray(res.data)) {
        this.setData({
          products: res.data
        });
      } else {
        this.setData({
          products: products
        });
      }
    } catch (error) {
      console.error('加载失败:', error);
      this.setData({
        products: products
      });
    }
  },


  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})